using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;

namespace RDI.Alef
{
    public sealed class Mapeamento
    {
        private SortedList _propriedades = null;
        private SortedList _agregacoes = null;
        private String _prefixo;

        public Boolean Pronto { get; set; }

        public SortedList Propriedades
        {
            get
            {
                if (_propriedades == null)
                    _propriedades = new SortedList();
                return _propriedades;
            }
            set { _propriedades = value; }
        }

        public SortedList aggregations
        {
            get
            {
                if (_agregacoes == null)
                    _agregacoes = new SortedList();
                return _agregacoes;
            }
            set { _agregacoes = value; }
        }

        public Type Tipo { get; set; }

        public String Prefixo
        {
            get { return _prefixo; }
            set
            {
                if (!String.IsNullOrEmpty(value))
                    value = value.Replace('.', '$');
                _prefixo = value;
            }
        }

        public Type TipoComposicao { get; set; }
    }
}